package com.test.test_rest.miner_pool.domain.gen;

import java.io.Serializable;
import java.math.BigDecimal;

public class SuperWalletTrxWithdrawTransferRecord implements Serializable {
    /**
     * 交易id
     */
    private Integer id;

    /**
     * 订单号
     */
    private String orderNum;

    private String hashStr;

    /**
     * 转移数量
     */
    private BigDecimal valueNum;

    /**
     * 未确认0  确认中1  失败2  成功3
     */
    private Integer types;

    /**
     * 发起方地址
     */
    private String fromAddr;

    /**
     * 接收方地址
     */
    private String toAddr;

    /**
     * 代币名称
     */
    private String token;

    /**
     * 消耗矿工费
     */
    private BigDecimal fee;

    /**
     * 插入时间
     */
    private Integer timeStamp;

    /**
     * 插入状态时间
     */
    private Integer statusTimeStamp;

    private static final long serialVersionUID = 1L;

    /**
     * 交易id
     */
    public Integer getId() {
        return id;
    }

    /**
     * 交易id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 订单号
     */
    public String getOrderNum() {
        return orderNum;
    }

    /**
     * 订单号
     */
    public void setOrderNum(String orderNum) {
        this.orderNum = orderNum;
    }

    public String getHashStr() {
        return hashStr;
    }

    public void setHashStr(String hashStr) {
        this.hashStr = hashStr;
    }

    /**
     * 转移数量
     */
    public BigDecimal getValueNum() {
        return valueNum;
    }

    /**
     * 转移数量
     */
    public void setValueNum(BigDecimal valueNum) {
        this.valueNum = valueNum;
    }

    /**
     * 未确认0  确认中1  失败2  成功3
     */
    public Integer getTypes() {
        return types;
    }

    /**
     * 未确认0  确认中1  失败2  成功3
     */
    public void setTypes(Integer types) {
        this.types = types;
    }

    /**
     * 发起方地址
     */
    public String getFromAddr() {
        return fromAddr;
    }

    /**
     * 发起方地址
     */
    public void setFromAddr(String fromAddr) {
        this.fromAddr = fromAddr;
    }

    /**
     * 接收方地址
     */
    public String getToAddr() {
        return toAddr;
    }

    /**
     * 接收方地址
     */
    public void setToAddr(String toAddr) {
        this.toAddr = toAddr;
    }

    /**
     * 代币名称
     */
    public String getToken() {
        return token;
    }

    /**
     * 代币名称
     */
    public void setToken(String token) {
        this.token = token;
    }

    /**
     * 消耗矿工费
     */
    public BigDecimal getFee() {
        return fee;
    }

    /**
     * 消耗矿工费
     */
    public void setFee(BigDecimal fee) {
        this.fee = fee;
    }

    /**
     * 插入时间
     */
    public Integer getTimeStamp() {
        return timeStamp;
    }

    /**
     * 插入时间
     */
    public void setTimeStamp(Integer timeStamp) {
        this.timeStamp = timeStamp;
    }

    /**
     * 插入状态时间
     */
    public Integer getStatusTimeStamp() {
        return statusTimeStamp;
    }

    /**
     * 插入状态时间
     */
    public void setStatusTimeStamp(Integer statusTimeStamp) {
        this.statusTimeStamp = statusTimeStamp;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderNum=").append(orderNum);
        sb.append(", hashStr=").append(hashStr);
        sb.append(", valueNum=").append(valueNum);
        sb.append(", types=").append(types);
        sb.append(", fromAddr=").append(fromAddr);
        sb.append(", toAddr=").append(toAddr);
        sb.append(", token=").append(token);
        sb.append(", fee=").append(fee);
        sb.append(", timeStamp=").append(timeStamp);
        sb.append(", statusTimeStamp=").append(statusTimeStamp);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        SuperWalletTrxWithdrawTransferRecord other = (SuperWalletTrxWithdrawTransferRecord) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getOrderNum() == null ? other.getOrderNum() == null : this.getOrderNum().equals(other.getOrderNum()))
            && (this.getHashStr() == null ? other.getHashStr() == null : this.getHashStr().equals(other.getHashStr()))
            && (this.getValueNum() == null ? other.getValueNum() == null : this.getValueNum().equals(other.getValueNum()))
            && (this.getTypes() == null ? other.getTypes() == null : this.getTypes().equals(other.getTypes()))
            && (this.getFromAddr() == null ? other.getFromAddr() == null : this.getFromAddr().equals(other.getFromAddr()))
            && (this.getToAddr() == null ? other.getToAddr() == null : this.getToAddr().equals(other.getToAddr()))
            && (this.getToken() == null ? other.getToken() == null : this.getToken().equals(other.getToken()))
            && (this.getFee() == null ? other.getFee() == null : this.getFee().equals(other.getFee()))
            && (this.getTimeStamp() == null ? other.getTimeStamp() == null : this.getTimeStamp().equals(other.getTimeStamp()))
            && (this.getStatusTimeStamp() == null ? other.getStatusTimeStamp() == null : this.getStatusTimeStamp().equals(other.getStatusTimeStamp()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getOrderNum() == null) ? 0 : getOrderNum().hashCode());
        result = prime * result + ((getHashStr() == null) ? 0 : getHashStr().hashCode());
        result = prime * result + ((getValueNum() == null) ? 0 : getValueNum().hashCode());
        result = prime * result + ((getTypes() == null) ? 0 : getTypes().hashCode());
        result = prime * result + ((getFromAddr() == null) ? 0 : getFromAddr().hashCode());
        result = prime * result + ((getToAddr() == null) ? 0 : getToAddr().hashCode());
        result = prime * result + ((getToken() == null) ? 0 : getToken().hashCode());
        result = prime * result + ((getFee() == null) ? 0 : getFee().hashCode());
        result = prime * result + ((getTimeStamp() == null) ? 0 : getTimeStamp().hashCode());
        result = prime * result + ((getStatusTimeStamp() == null) ? 0 : getStatusTimeStamp().hashCode());
        return result;
    }
}